00001
00002 #ifndef INCLUDED_LIB3DS_TCB_H
00003 #define INCLUDED_LIB3DS_TCB_H
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef INCLUDED_LIB3DS_TYPES_H
00027 #include <lib3ds/types.h>
00028 #endif
00029
00030 #ifdef __cplusplus
00031 extern "C" {
00032 #endif
00033
00034 typedef enum _Lib3dsTcbFlags{
00035 LIB3DS_USE_TENSION =0x0001,
00036 LIB3DS_USE_CONTINUITY =0x0002,
00037 LIB3DS_USE_BIAS =0x0004,
00038 LIB3DS_USE_EASE_TO =0x0008,
00039 LIB3DS_USE_EASE_FROM =0x0010
00040 } Lib3dsTcbFlags;
00041
00042 typedef struct _Lib3dsTcb {
00043 Lib3dsIntd frame;
00044 Lib3dsWord flags;
00045 Lib3dsFloat tens;
00046 Lib3dsFloat cont;
00047 Lib3dsFloat bias;
00048 Lib3dsFloat ease_to;
00049 Lib3dsFloat ease_from;
00050 } Lib3dsTcb;
00051
00052 extern LIB3DSAPI void lib3ds_tcb(Lib3dsTcb *p, Lib3dsTcb *pc, Lib3dsTcb *c,
00053 Lib3dsTcb *nc, Lib3dsTcb *n, Lib3dsFloat *ksm, Lib3dsFloat *ksp,
00054 Lib3dsFloat *kdm, Lib3dsFloat *kdp);
00055 extern LIB3DSAPI Lib3dsBool lib3ds_tcb_read(Lib3dsTcb *tcb, Lib3dsIo *io);
00056 extern LIB3DSAPI Lib3dsBool lib3ds_tcb_write(Lib3dsTcb *tcb, Lib3dsIo *io);
00057
00058 #ifdef __cplusplus
00059 };
00060 #endif
00061 #endif
00062